package com.mrlee.mapper;

import com.mrlee.bean.Admin;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;
@Repository
public interface AdminMapper {
    /**
     * 根据Id删除管理员
     * @param adminId
     * @return
     */
    int deleteByPrimaryKey(Integer adminId);

    /**
     * 添加管理员
     * @param record
     * @return
     */
    int insert(Admin record);

    /**
     * 动态添加管理员
     * @param record
     * @return
     */
    int insertSelective(Admin record);

    /**
     * 根据管理员Id查找管理员
     * @param adminId
     * @return
     */
    Admin selectByPrimaryKey(Integer adminId);

    /**
     * 动态修改管理员信息
     * @param record
     * @return
     */
    int updateByPrimaryKeySelective(Admin record);

    /**
     * 修改管理员信息
     * @param record
     * @return
     */
    int updateByPrimaryKey(Admin record);

    /**
     * 登录
     * @param username
     * @param password
     * @return
     */
    Admin dologin(@Param("username") String username, @Param("password") String password);

    /**
     * 查询全部管理员
     * @return
     */
    List<Admin> selectAllAdmin();

    /**
     * 修改密码
     * @param adminId
     * @return
     */
    int updatePwdById(Integer adminId);

    /**
     * 根据名字模糊查找管理员
     * @param name
     * @return
     */
    List<Admin> selectAdminByName( @Param("name") String name);

    /**
     * 根据角色名查找管理员
     * @param roleName
     * @return
     */
    List<Admin> selectAdminByRoleName(@Param("roleName") String roleName);

    /**
     * 根据登录名查找管理员
     * @param name
     * @return
     */
    Admin selectAdmin(String name);


    Admin selectAdminByUserame(String name);


    int updateByName(@Param("name") String name, @Param("password") String password);

}